package org.sanguine.plugin.timetracker.pojo;

import java.util.Date;

/**
 * <p>
 * Timer entity.
 * </p>
 * <p>
 * <code>
 *      <timer>
 *      <!-- day_entry with toggled timer -->
 *      <day_entry>
 *      <id type="integer">195168</id>
 *      <spent_at type="date">2006-10-11</spent_at>
 *      <user_id type="integer">52</user_id>
 *      <client>Iridesco</client>
 *      <project_id>123456</project_id>
 *      <project>Harvest</project>
 *      <task_id>678901</task_id>
 *      <task>Backend Programming</task>
 *      <hours type="float">0.00</hours>
 *      <notes>Test api support</notes>
 *      <created_at type="datetime">Thu, 17 Nov 2011 10:19:57 +0000</created_at>
 *      <updated_at type="datetime">Thu, 17 Nov 2011 12:24:03 +0000</updated_at>
 *      <!-- OPTIONAL returned only if the timer is running -->
 *      <timer_started_at type="datetime">
 *      Wed, 17 Oct 2006 10:45:07 +0000
 *      </timer_started_at>
 *      <!-- OPTIONAL returned only if timestamps are enabled -->
 *      <started_at>8:00am</started_at>
 *      <ended_at>10:00am</ended_at>
 *      </day_entry>
 *      <!-- OPTIONAL if a timer for another day_entry was stopped by side effect, returns a confirmed value for the timer. Protects against different clock rates on the client side. -->
 *      <hours_for_previously_running_timer type="float">
 *      0.87
 *      </hours_for_previously_running_timer>
 *      </timer>
 *     </code>
 * </p>
 * <b>Date:</b> 30.12.2014
 *
 * @author Alexey_Kuznetsov
 */
public final class Timer {
    public Integer id;
    public Integer projectId;
    public Integer taskId;
    public String notes;
    public Float hours;
    public Date timerStartedAt;
    public Date createdAt;
    public Date updatedAt;
    public Float hoursForPreviouslyRunningTimer;
    public Float hoursWithoutTimer;

    @Override
    public String toString() {
        return "Timer [id=" + id + "]";
    }
}
